package com.tamecode.flowable;

import org.flowable.engine.delegate.DelegateExecution;
import org.flowable.engine.delegate.JavaDelegate;

/**
 * 流程执行器
 *
 * @Author: LiQiongchao
 * @Date: 2021/8/8 22:29
 */
public class CallExternalSystemDelegate implements JavaDelegate {
    @Override
    public void execute(DelegateExecution execution) {
        System.out.println("Calling the external system for employee "
                + execution.getVariable("employee"));

        // 可以设置变量
//        execution.setVariable();

        // 是否要查出来流程的所有的变量，默认是查询出来所有的。其它execution再需要的时候就不需要去查询了。
        Object employee = execution.getVariable("employee", false);

        // 设置临时变量，临时变量不存储，在下一个等待之前有效。
//        execution.setTransientVariable("", "");
        // 设置临时局部变量，否则就是全局的。
//        execution.setTransientVariableLocal("", "");
    }
}
